package com.io.io02;

import java.io.FileInputStream;
import java.io.InputStream;
import java.util.Arrays;

public class Demo3 {
    public static void main(String[] args) throws Exception {
        InputStream is = new FileInputStream("./hello.txt");
        // FileInputStream 可以赋值给 InputStream，是因为 有继承关系 && FileInputStream 是 InputStream 的下级类

        // 准备好一个水桶
        byte[] buf = new byte[1024];        // 1024 代表能接 1024 滴（字节）水，我们准备好桶的容量

        // 拿着准备好的桶去水龙头接水
        int n = is.read(buf);
        // 这里的 n 代表这次真正接到了多少滴（字节）水
        // n 一定小于等于 1024 && n >= 0
//        System.out.println(n);  // 28
        // 真正的数据放在 buf 从 [0, 28)
        byte[] bytes = Arrays.copyOf(buf, n);
        for (byte b : bytes) {
            System.out.printf("%02x\n", b);
        }

        is.close();
    }
}
